import { createStore } from 'vuex'
//用来创建store仓库
export default createStore({
  //状态{变量}
  state: {
    name:"张三",
    age:"20"
  },
  //对state的值进行加工
  getters:{
    getname(state){
      return `bilibili${state.name}`
    }
  },
  //修改状态，（修改变量和值）
  mutations: {
    setname(state,val){
      state.name = val.dogname
    },
    setage(state,param){
      state.age = param
    }
  },

  //异步修改
  actions: {
    //content是store的副本
    tosetage(content,param){
      //promise处理回调地狱
      return new Promise(reslove=>{
        setTimeout(() => {
          //2秒后触发mutations的方法
          content.commit('setage',param)
          reslove()
        }, 2000);
      })
    }
  },

  //模块管理
  modules: {
  }
})
